#!/bin/bash

# 导出所有Docker镜像到当前目录
export_images() {
    echo "正在导出所有Docker镜像..."
    mkdir -p ./docker_images
    for img in $(docker images --format "{{.Repository}}:{{.Tag}}"); do
        echo "正在导出镜像: $img"
        docker save $img > ./docker_images/${img//\//_}.tar
    done
    echo "所有镜像已导出到 ./docker_images 目录"
}

# 导入当前目录下所有镜像文件
import_images() {
    echo "正在导入当前目录下的所有镜像文件..."
    for img in *.tar; do
        if [ -f "$img" ]; then
            echo "正在导入镜像文件: $img"
            docker load < $img
        fi
    done
    echo "所有镜像文件已导入完成"
}

# 根据用户输入选择操作
echo "请选择操作："
echo "1. 导出所有Docker镜像"
echo "2. 导入当前目录下的所有镜像文件"
read -p "请输入选项 (1 或 2): " choice

case $choice in
    1)
        export_images
        ;;
    2)
        import_images
        ;;
    *)
        echo "无效的选项，请输入 1 或 2"
        ;;
esac